Termination Proof Script

Consider the TRS R consisting of the rewrite rules
1:    x + 0  → x
2:    0 + x  → x
3:    s(x) + s(y)  → s(s(x + y))
4:    (x + y) + z  → x + (y + z)
5:    x * 0  → 0
6:    0 * x  → 0
7:    s(x) * s(y)  → s((x * y) + (x + y))
8:    (x * y) * z  → x * (y * z)
9:    sum(nil)  → 0
10:    sum(cons(x,l))  → x + sum(l)
11:    prod(nil)  → s(0)
12:    prod(cons(x,l))  → x * prod(l)
There are 12 dependency pairs:
13:    s(x) +# s(y)  → x +# y
14:    (x + y) +# z  → x +# (y + z)
15:    (x + y) +# z  → y +# z
16:    s(x) *# s(y)  → (x * y) +# (x + y)
17:    s(x) *# s(y)  → x *# y
18:    s(x) *# s(y)  → x +# y
19:    (x * y) *# z  → x *# (y * z)
20:    (x * y) *# z  → y *# z
21:    SUM(cons(x,l))  → x +# sum(l)
22:    SUM(cons(x,l))  → SUM(l)
23:    PROD(cons(x,l))  → x *# prod(l)
24:    PROD(cons(x,l))  → PROD(l)
The approximated dependency graph contains 4 SCCs: {13-15}, {17,19,20}, {24} and {22}. Hence the TRS is terminating.
Tyrolean Termination Tool  (0.04 seconds)   ---  May 3, 2006